// <copyright file="MatchPlayEngineTest.cs" company="Open Source"></copyright>

using System;
using _22yards.Core;
using Microsoft.Pex.Framework;
using Microsoft.Pex.Framework.Validation;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace _22yards.Core
{
    [TestClass]
    [PexClass(typeof(MatchPlayEngine))]
    [PexAllowedExceptionFromTypeUnderTest(typeof(ArgumentException), AcceptExceptionSubtypes = true)]
    [PexAllowedExceptionFromTypeUnderTest(typeof(InvalidOperationException))]
    public partial class MatchPlayEngineTest
    {
        [PexMethod]
        public void TossCoin([PexAssumeUnderTest]MatchPlayEngine target, int call)
        {
            target.TossCoin(call);
            // TODO: add assertions to method MatchPlayEngineTest.TossCoin(MatchPlayEngine, Int32)
        }
        [PexMethod]
        public bool PlayOver([PexAssumeUnderTest]MatchPlayEngine target)
        {
            bool result = target.PlayOver();
            return result;
            // TODO: add assertions to method MatchPlayEngineTest.PlayOver(MatchPlayEngine)
        }
        [PexMethod]
        public bool PlayCustomOvers([PexAssumeUnderTest]MatchPlayEngine target)
        {
            bool result = target.PlayCustomOvers();
            return result;
            // TODO: add assertions to method MatchPlayEngineTest.PlayCustomOvers(MatchPlayEngine)
        }
        [PexMethod]
        public bool PlayBall([PexAssumeUnderTest]MatchPlayEngine target)
        {
            bool result = target.PlayBall();
            return result;
            // TODO: add assertions to method MatchPlayEngineTest.PlayBall(MatchPlayEngine)
        }
        [PexMethod]
        public void MessageStoreSet([PexAssumeUnderTest]MatchPlayEngine target, DynamicMessageStore value)
        {
            target.MessageStore = value;
            // TODO: add assertions to method MatchPlayEngineTest.MessageStoreSet(MatchPlayEngine, DynamicMessageStore)
        }
        [PexMethod]
        public DynamicMessageStore MessageStoreGet([PexAssumeUnderTest]MatchPlayEngine target)
        {
            DynamicMessageStore result = target.MessageStore;
            return result;
            // TODO: add assertions to method MatchPlayEngineTest.MessageStoreGet(MatchPlayEngine)
        }
        [PexMethod]
        public void InitMatch([PexAssumeUnderTest]MatchPlayEngine target, Match _match)
        {
            target.InitMatch(_match);
            // TODO: add assertions to method MatchPlayEngineTest.InitMatch(MatchPlayEngine, Match)
        }
        [PexMethod]
        public MatchPlayEngine Constructor()
        {
            MatchPlayEngine target = new MatchPlayEngine();
            return target;
            // TODO: add assertions to method MatchPlayEngineTest.Constructor()
        }
    }
}
